home *** CD-ROM | disk | FTP | other *** search
Text File | 1992-01-17 | 11.2 KB | 534 lines | [TEXT/MPS ] |
- /*------------------------------------------------------------------------------
- #
- # Apple Macintosh Developer Technical Support
- #
- # MultiFinder-Aware TextEdit Sample Application
- #
- # TEStyleSample
- #
- # TEStyleSample.r - Rez Source
- #
- # Copyright © 1989 Apple Computer, Inc.
- # All rights reserved.
- #
- # Versions: 1.0 10/89
- # 2.0 3/91
- #
- # Components: XTEStyleSample.p March 29, 1991
- # XTEStyleSampleGlue.a March 29, 1991
- # XTEStyleSample.r March 29, 1991
- # XTEStyleSample.h March 29, 1991
- # XTEStyleSample.make March 29, 1991
- #
- # TEStyleSample is an example application that demonstrates how
- # to initialize the commonly used toolbox managers, operate
- # successfully under MultiFinder, handle desk accessories and
- # create, grow, and zoom windows. Both styled and fundamental TextEdit
- # toolbox calls and TextEdit autoscroll are demonstrated. It
- # also shows how to create and maintain scrollbar controls as well
- # as implementing a basic printing loop.
- #
- # It does not by any means demonstrate all the techniques you
- # need for a large application. In particular, TEStyleSample does not
- # cover exception handling, multiple windows/documents,
- # sophisticated memory management, or undo. All of
- # these are vital parts of a normal full-sized application.
- #
- # This application is an example of the form of a Macintosh
- # application; it is NOT a template. It is NOT intended to be
- # used as a foundation for the next world-class, best-selling,
- # 600K application. A stick figure drawing of the human body may
- # be a good example of the form for a painting, but that does not
- # mean it should be used as the basis for the next Mona Lisa.
- #
- # We recommend that you review this program, TESample or Sample before
- # beginning a new application. TESample is a simpler version of TEStyleSample
- # without styles and Sample is a simple app. which doesn’t
- # use TextEdit or the Control Manager.
- #
- ------------------------------------------------------------------------------*/
-
- #include "SysTypes.r"
- #include "Types.r"
- #include "XTEStyleSample.h"
-
- resource 'vers' (1) {
- 0x02, 0x00, release, 0x00, verUS,
- "2.00",
- "2.00, Copyright © 1989-1991 Apple Computer, Inc."
- };
-
- /* we use an MBAR resource to conveniently load all the menus */
-
- resource 'MBAR' (rMenuBar, preload) {
- { mApple, mFile, mEdit, mFont, mFontSize, mStyle }; /* six menus */
- };
-
-
- resource 'MENU' (mApple, preload) {
- mApple, textMenuProc,
- AllItems & ~MenuItem2, /* disable dashed line, enable About and DAs */
- enabled, apple,
- {
- "About XTEStyleSample…",
- noicon, nokey, nomark, plain;
- "-",
- noicon, nokey, nomark, plain
- }
- };
-
- resource 'MENU' (mFile, preload) {
- mFile, textMenuProc,
- MenuItem12, /* enable Quit only, program enables others */
- enabled, "File",
- {
- "New",
- noicon, "N", nomark, plain;
- "Open",
- noicon, "O", nomark, plain;
- "-",
- noicon, nokey, nomark, plain;
- "Close",
- noicon, "W", nomark, plain;
- "Save",
- noicon, "S", nomark, plain;
- "Save As…",
- noicon, nokey, nomark, plain;
- "Revert",
- noicon, nokey, nomark, plain;
- "-",
- noicon, nokey, nomark, plain;
- "Page Setup…",
- noicon, nokey, nomark, plain;
- "Print…",
- noicon, nokey, nomark, plain;
- "-",
- noicon, nokey, nomark, plain;
- "Quit",
- noicon, "Q", nomark, plain
- }
- };
-
- resource 'MENU' (mEdit, preload) {
- mEdit, textMenuProc,
- NoItems, /* disable everything, program does the enabling */
- enabled, "Edit",
- {
- "Undo",
- noicon, "Z", nomark, plain;
- "-",
- noicon, nokey, nomark, plain;
- "Cut",
- noicon, "X", nomark, plain;
- "Copy",
- noicon, "C", nomark, plain;
- "Paste",
- noicon, "V", nomark, plain;
- "Clear",
- noicon, nokey, nomark, plain;
- "-",
- noicon, nokey, nomark, plain;
- "Select All",
- noicon, "A", nomark, plain
- }
- };
-
- /* Added for TEStyleSample */
- /* Font Menu */
- resource 'MENU' (mFont, preload) {
- mFont, textMenuProc,
- AllItems, /* enable everything since these are fonts */
- enabled, "Font",
- {
- }
- };
-
- /* Added for TEStyleSample */
- /* Size Menu Items */
- resource 'MENU' (mFontSize, preload) {
- mFontSize, textMenuProc,
- AllItems, /* enable everything, since these are font sizes */
- enabled, "Font Size",
- {
- "9 Point", noIcon, noKey, noMark, plain,
- "10 Point", noIcon, noKey, noMark, plain,
- "12 Point", noIcon, noKey, noMark, plain,
- "14 Point", noIcon, noKey, noMark, plain,
- "18 Point", noIcon, noKey, noMark, plain,
- "24 Point", noIcon, noKey, noMark, plain,
- "Other…", noIcon, noKey, noMark, plain
- }
- };
-
- /* Added for TEStyleSample */
- /* Style Menu Items */
- resource 'MENU' (mStyle, preload) {
- mStyle, textMenuProc,
- AllItems & ~MenuItem2, /* enable everything except dash */
- enabled, "Style",
- {
- "Plain",
- noicon, "P", nomark, plain;
- "-",
- noicon, nokey, nomark, plain;
- "Bold",
- noicon, "B", nomark, bold;
- "Italic",
- noicon, "I", nomark, italic;
- "Underline",
- noicon, "U", nomark, underline;
- "Outline",
- noicon, nokey, nomark, outline;
- "Shadow",
- noicon, nokey, nomark, shadow
- }
- };
-
-
- /* this ALRT and DITL are used as an About screen */
-
- resource 'ALRT' (rAboutAlert, purgeable) {
- {40, 20, 198, 320}, rAboutAlert, {
- OK, visible, silent;
- OK, visible, silent;
- OK, visible, silent;
- OK, visible, silent
- };
- };
-
- resource 'DITL' (rAboutAlert, purgeable) {
- { /* array DITLarray: 5 elements */
- /* [1] */
- {130, 109, 150, 189},
- Button {
- enabled,
- "Thanks!"
- },
- /* [2] */
- {8, 10, 25, 322},
- StaticText {
- disabled,
- "XTND-Capable Styled TextEdit Application"
- },
- /* [3] */
- {29, 10, 63, 311},
- StaticText {
- disabled,
- "Copyright © 1989-1991 Apple Computer\n"
- "& Claris Corporation"
- },
- /* [4] */
- {70, 10, 86, 138},
- StaticText {
- disabled,
- "Brought to you by:"
- },
- /* [5] */
- {89, 10, 123, 281},
- StaticText {
- disabled,
- "Macintosh Developer Technical Support\n"
- "& Claris Corporation"
- }
- }
- };
-
-
- /* this ALRT and DITL are used as an error screen */
-
- resource 'ALRT' (rUserAlert, purgeable) {
- {40, 20, 150, 260},
- rUserAlert,
- { /* array: 4 elements */
- /* [1] */
- OK, visible, silent,
- /* [2] */
- OK, visible, silent,
- /* [3] */
- OK, visible, silent,
- /* [4] */
- OK, visible, silent
- }
- };
-
-
- resource 'DITL' (rUserAlert, purgeable) {
- { /* array DITLarray: 3 elements */
- /* [1] */
- {85, 86, 105, 166},
- Button {
- enabled,
- "Sorry"
- },
- /* [2] */
- {10, 60, 75, 228},
- StaticText {
- disabled,
- "Error. ^0.\n^1"
- },
- /* [3] */
- {8, 8, 40, 40},
- Icon {
- disabled,
- 2
- }
- }
- };
-
-
- /* this DLOG and DITL are used as a Font Size selector */
-
- resource 'DLOG' (rFontSelect) {
- {40, 40, 150, 256},
- dBoxProc,
- invisible,
- nogoAway,
- 0x0,
- rFontSelect,
- ""
- };
-
- resource 'DITL' (rFontSelect, purgeable) {
- { /* array DITLarray: 4 elements */
- /* [1] */
- {73, 138, 93, 197},
- Button {
- enabled,
- "OK"
- },
- /* [2] */
- {73, 45, 93, 103},
- Button {
- enabled,
- "Cancel"
- },
- /* [3] */
- {10, 46, 29, 210},
- StaticText {
- disabled,
- "Choose New Font Size"
- },
- /* [4] */
- {37, 89, 55, 130},
- EditText {
- disabled,
- "10"
- }
- }
- };
-
- resource 'ALRT' (kFileMessageID) {
- {60, 84, 206, 356},
- 131,
- { /* array: 4 elements */
- /* [1] */
- OK, visible, silent,
- /* [2] */
- OK, visible, silent,
- /* [3] */
- OK, visible, silent,
- /* [4] */
- OK, visible, silent
- }
- };
-
- resource 'DITL' (kFileMessageID) {
- { /* array DITLarray: 2 elements */
- /* [1] */
- {117, 20, 143, 89},
- Button {
- enabled,
- "Next"
- },
- /* [2] */
- {9, 5, 111, 255},
- StaticText {
- enabled,
- "^0^1^2^3"
- }
- }
- };
-
- resource 'ALRT' (kTextRunsDispID) {
- {60, 84, 306, 556},
- 134,
- { /* array: 4 elements */
- /* [1] */
- OK, visible, silent,
- /* [2] */
- OK, visible, silent,
- /* [3] */
- OK, visible, silent,
- /* [4] */
- OK, visible, silent
- }
- };
-
- resource 'DITL' (kTextRunsDispID) {
- { /* array DITLarray: 4 elements */
- /* [1] */
- {211, 190, 237, 259},
- Button {
- enabled,
- "Next"
- },
- /* [2] */
- {54, 11, 193, 465},
- StaticText {
- enabled,
- "(^0^1)"
- },
- /* [3] */
- {15, 52, 36, 114},
- StaticText {
- enabled,
- "Text Run"
- },
- /* [4] */
- {14, 315, 35, 429},
- StaticText {
- enabled,
- "Count = ^2"
- }
- }
- };
-
- resource 'WIND' (rDocWindow, preload, purgeable) {
- {64, 60, 314, 460},
- zoomDocProc, invisible, goAway, 0x0, "untitled"
- };
-
-
- resource 'CNTL' (rVScroll, preload, purgeable) {
- {-1, 385, 236, 401},
- 0, visible, 0, 0, scrollBarProc, 0, ""
- };
-
-
- resource 'CNTL' (rHScroll, preload, purgeable) {
- {235, -1, 251, 386},
- 0, visible, 0, 0, scrollBarProc, 0, ""
- };
-
- resource 'STR#' (kErrStrings, purgeable) {
- {
- "You must run on 512Ke or later";
- "Application Memory Size is too small";
- "Not enough memory to run TEStyleSample";
- "Not enough memory to do Cut";
- "Cannot do Cut";
- "Cannot do Copy";
- "Cannot exceed 32,000 characters with Paste";
- "Not enough memory to do Paste";
- "Cannot create window";
- "Cannot exceed 32,000 characters";
- "Cannot do Paste";
- "Cannot do Import/Export";
- "Error while trying to load translator resource";
- "Error while opening import file resources";
- "Error reading resources from document";
- "Error opening document";
- "Error initializing translator";
- "Error deleting previous file";
- "Could not create file";
- "Error opening file"
- }
- };
-
- /* here is the quintessential MultiFinder friendliness device, the SIZE resource */
-
- resource 'SIZE' (-1) {
- dontSaveScreen,
- acceptSuspendResumeEvents,
- enableOptionSwitch,
- canBackground, /* we can background; we don't currently, but our sleep value */
- /* guarantees we don't hog the Mac while we are in the background */
- multiFinderAware, /* this says we do our own activate/deactivate; don't fake us out */
- backgroundAndForeground, /* this is definitely not a background-only application! */
- dontGetFrontClicks, /* change this is if you want "do first click" behavior like the Finder */
- ignoreChildDiedEvents, /* essentially, I'm not a debugger (sub-launching) */
- not32BitCompatible, /* this app should not be run in 32-bit address space */
- reserved,
- reserved,
- reserved,
- reserved,
- reserved,
- reserved,
- reserved,
- kPrefSize * 1024,
- kMinSize * 1024
- };
-
-
- type 'XTND' as 'STR ';
-
-
- resource 'XTND' (0) {
- "XTND-Capable Styled TextEdit Application"
- };
-
-
- resource 'BNDL' (128) {
- 'XTND',
- 0,
- {
- 'ICN#',
- {
- 0, 128
- },
- 'FREF',
- {
- 0, 128
- }
- }
- };
-
-
- resource 'FREF' (128) {
- 'APPL',
- 0,
- ""
- };
-
-
- resource 'ICN#' (128) {
- { /* array: 2 elements */
- /* [1] */
- $"0430 4000 0A50 A000 0B91 1002 0822 0803"
- $"1224 0405 2028 7FF9 4010 2011 8000 1011"
- $"8802 2012 7405 4014 0208 8814 0410 4418"
- $"0820 2214 1044 1052 1882 08B1 0D11 1112"
- $"0A08 2204 0844 4408 0820 8810 0811 1020"
- $"0802 A040 0804 4080 0808 0100 0804 0200"
- $"0FFE 0400 0002 0800 0001 1000 0000 A000"
- $"0000 40",
- /* [2] */
- $"0430 4000 0E70 E000 0FF1 F002 0FE3 F803"
- $"1FE7 FC07 3FEF FFFF 7FFF FFFF FFFF FFFF"
- $"FFFF FFFE 7FFF FFFC 01FF FFFC 03FF FFF8"
- $"07FF FFFC 0FFF FFFE 1FFF FFFF 0FFF FFFE"
- $"0FFF FFFC 0FFF FFF8 0FFF FFF0 0FFF FFE0"
- $"0FFF FFC0 0FFF FF80 0FFF FF00 0FFF FE00"
- $"0FFF FC00 0003 F800 0001 F000 0000 E000"
- $"0000 40"
- }
- };
-
- /* XTND STR# resources */
-
- resource 'STR#' (25003, "Claris ƒ names", purgeable) {
- { /* array StringArray: 1 elements */
- /* [1] */
- "Claris"
- }
- };
-
- resource 'STR#' (25004, "Claris XTND names", purgeable) {
- { /* array StringArray: 2 elements */
- /* [1] */
- "Claris Translators",
- /* [2] */
- "Claris XTND System"
- }
- };
-